<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>学习 vue</title>
		<script src="../vue.js" type="text/javascript" charset="utf-8"></script>
	</head>
	<body>
		<!-- 
			小结
		 -->
		<!-- 创建容器 -->
		<div id="root">
			<h2>人员对象</h2>
			<input type="text" placeholder="请输入名字" v-model="keyWord" />
			<button type="button" @click="sortType=2">年龄升序</button>
			<button type="button" @click="sortType=1">年龄降序</button>
			<button type="button" @click="sortType=0">原顺序</button>
			<ul>
				<li v-for="(p,index) in filPersonList" :key="p.id">
					{{p}}
				</li>
			</ul>

		</div>
		
		<script type="text/javascript">
			Vue.config.productionTip=false
			//用computed实现
			const vm=new Vue({
				el:'#root',
				data:{
					keyWord:'',
					sortType:0,//0原顺序，1降序,2升序
					personList:[
						{id:'001',name:'马冬梅',age:18,sex:'女'},
						{id:'002',name:'周冬雨',age:31,sex:'女'},
						{id:'003',name:'周杰伦',age:23,sex:'男'},
						{id:'004',name:'温兆伦',age:27,sex:'男'}
					],	
				},
				computed:{
					filPersonList(){
						const arr= this.personList.filter((p)=>{
								return p.name.indexOf(this.keyWord)!==-1//写的是匹配的条件
							} ) 
							
							//判断一下是否需要排序
							if(this.sortType!==0){
								arr.sort((a,b)=>{
									return this.sortType===1?b.age-a.age:a.age-b.age
									
								})
							}
							return arr
							
					}
				}
			}) 
		</script>
	</body>
</html>
